package com.ren.scale.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ren.cache.annotation.MultiCache;
import com.ren.scale.constant.CachePrefix;
import com.ren.scale.entity.ReclScale;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ren.scale.entity.vo.ReclScaleQueryVo;
import com.ren.scale.entity.vo.ReclScaleVo;
import com.ren.utils.page.PageItem;
import org.apache.catalina.LifecycleState;

import java.util.List;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author RZY
 * @since 2022-07-13
 */
public interface ReclScaleService extends IService<ReclScale> {

    ReclScaleVo getScaleVoById(Long id);

    PageItem<ReclScaleVo> getFrontScaleOfPage(ReclScaleQueryVo reclScaleQueryVo, long current, long limit);

    PageItem<ReclScaleVo> getScaleOfPage(ReclScaleQueryVo reclScaleQueryVo, long current, long limit);

    boolean updateScaleById(ReclScale reclScale);

    boolean delScaleById(Long id);

    boolean addScale(ReclScale reclScale);

    List<ReclScaleVo> getFmVos(List<Long> userIds, List<ReclScale> reclScales);

    List<ReclScaleVo> getScaleByCollectionUserId(String userId);

    ReclScale getScaleOfOrder(Long id);
}
